[INFO] fetching crate nickel 0.11.0...
[INFO] fixing nickel-0.11.0 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate nickel 0.11.0 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate nickel 0.11.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate nickel 0.11.0
[INFO] tweaked toml for crates.io crate nickel 0.11.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate nickel 0.11.0 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 83 packages to latest compatible versions
[INFO] [stderr]       Adding compiletest_rs v0.3.26 (available: v0.11.2)
[INFO] [stderr]       Adding hyper v0.10.16 (available: v1.10.1)
[INFO] [stderr]       Adding log v0.3.9 (available: v0.4.33)
[INFO] [stderr]       Adding time v0.1.45 (available: v0.3.51)
[INFO] [stderr]       Adding url v1.7.2 (available: v2.5.8)
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `nickel` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] c7493f5c15cab38faaa7a8ce1e44ade6c11b9584bab912ad25a67d0108aa604a
[INFO] running `Command { std: "docker" "start" "c7493f5c15cab38faaa7a8ce1e44ade6c11b9584bab912ad25a67d0108aa604a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c7493f5c15cab38faaa7a8ce1e44ade6c11b9584bab912ad25a67d0108aa604a" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c7493f5c15cab38faaa7a8ce1e44ade6c11b9584bab912ad25a67d0108aa604a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c7493f5c15cab38faaa7a8ce1e44ade6c11b9584bab912ad25a67d0108aa604a" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2015 edition to 2018
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `nickel` (manifest) generated 1 warning
[INFO] [stderr]     Checking traitobject v0.1.1
[INFO] [stderr]     Checking matches v0.1.10
[INFO] [stderr]     Checking unicode-bidi v0.3.18
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]     Checking typeable v0.1.2
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking base64 v0.9.3
[INFO] [stderr]     Checking language-tags v0.2.2
[INFO] [stderr]     Checking groupable v0.2.0
[INFO] [stderr]     Checking modifier v0.1.0
[INFO] [stderr]     Checking unsafe-any v0.4.2
[INFO] [stderr]     Checking typemap v0.3.3
[INFO] [stderr]     Checking mime v0.2.6
[INFO] [stderr]     Checking mustache v0.9.0
[INFO] [stderr]     Checking plugin v0.2.6
[INFO] [stderr]     Checking idna v0.1.5
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]     Checking url v1.7.2
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking hyper v0.10.16
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]     Checking regex v1.12.4
[INFO] [stderr]     Checking nickel v0.11.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed src/router/router.rs (5 fixes)
[INFO] [stderr]        Fixed src/responder.rs (5 fixes)
[INFO] [stderr]        Fixed src/server.rs (6 fixes)
[INFO] [stderr]        Fixed src/static_files_handler.rs (4 fixes)
[INFO] [stderr]        Fixed src/extensions/response.rs (2 fixes)
[INFO] [stderr]        Fixed src/default_error_handler.rs (3 fixes)
[INFO] [stderr]        Fixed src/mount.rs (4 fixes)
[INFO] [stderr]        Fixed src/query_string.rs (2 fixes)
[INFO] [stderr]        Fixed src/response.rs (5 fixes)
[INFO] [stderr]        Fixed src/router/http_router.rs (5 fixes)
[INFO] [stderr]        Fixed src/body_parser.rs (5 fixes)
[INFO] [stderr]        Fixed src/nickel.rs (9 fixes)
[INFO] [stderr]        Fixed src/extensions/request.rs (1 fix)
[INFO] [stderr]        Fixed src/lib.rs (17 fixes)
[INFO] [stderr]        Fixed src/request.rs (1 fix)
[INFO] [stderr]        Fixed src/nickel_error.rs (1 fix)
[INFO] [stderr]        Fixed src/middleware.rs (5 fixes)
[INFO] [stderr]        Fixed src/favicon_handler.rs (4 fixes)
[INFO] [stderr]    Migrating tests/cfail.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/integration_testing.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/enable_cors.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/custom_error_handler.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/https.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/logger_middleware.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/hello_world.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/routing.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/form_data/form_data.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/json.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/static_files.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating tests/example_tests.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed tests/examples/route_data.rs (1 fix)
[INFO] [stderr]    Migrating examples/query_string.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed tests/examples/template.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/custom_error_handler.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/moved_ownership.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/chaining.rs (2 fixes)
[INFO] [stderr]        Fixed tests/examples/query_string/all.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/static_files.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/form_data.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/hello_world.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/query_string/mod.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/query_string/get.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/json.rs (4 fixes)
[INFO] [stderr]        Fixed tests/examples/mount.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/enable_cors.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/regex_route.rs (1 fix)
[INFO] [stderr]        Fixed tests/examples/routing.rs (1 fix)
[INFO] [stderr]    Migrating examples/hello_world_macro.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/chaining.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/regex_route.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/mount.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed src/nickel.rs (1 fix)
[INFO] [stderr]    Migrating examples/macro_example.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/route_data.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/no_macro_custom_data.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/moved_ownership.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating examples/template.rs from 2015 edition to 2018
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.61s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: typemap v0.3.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr] crater-edition-check: nickel v0.11.0 (/opt/rustwide/workdir) updating edition from 2015 to 2018
[INFO] [stderr]     Checking nickel v0.11.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut server = r#try!(HyperServer::http(addr));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:72:26
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut server = r#try!(HyperServer::https(addr, ssl));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             r#try!(server.serve("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:244:13
[INFO] [stdout]     |
[INFO] [stdout] 244 |             r#try!(server.serve(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             r#try!(server.serve_https("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |             r#try!(server.serve_https(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/response.rs:136:26
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let mut stream = r#try!(self.start());
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/responder.rs:72:34
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/responder.rs:114:34
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]     |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         r#try!(req.origin.read_to_string(&mut buf));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:46:28
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let body = r#try!(req.get_ref::<BodyReader>());
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut server = r#try!(HyperServer::http(addr));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:72:26
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut server = r#try!(HyperServer::https(addr, ssl));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             r#try!(server.serve("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:244:13
[INFO] [stdout]     |
[INFO] [stdout] 244 |             r#try!(server.serve(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             r#try!(server.serve_https("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |             r#try!(server.serve_https(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/response.rs:136:26
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let mut stream = r#try!(self.start());
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/responder.rs:72:34
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/responder.rs:114:34
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]     |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         r#try!(req.origin.read_to_string(&mut buf));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:46:28
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let body = r#try!(req.get_ref::<BodyReader>());
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/router/router.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub handler: Box<Middleware<D> + Send + Sync + 'static>,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub handler: Box<dyn Middleware<D> + Send + Sync + 'static>,
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/response.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     on_send: Vec<Box<FnMut(&mut Response<'a, D, Fresh>)>>
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     on_send: Vec<Box<dyn FnMut(&mut Response<'a, D, Fresh>)>>
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:42:23
[INFO] [stdout]    |
[INFO] [stdout] 42 |     handlers: Vec<Box<Middleware<D> + Send + Sync>>,
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     handlers: Vec<Box<dyn Middleware<D> + Send + Sync>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:43:29
[INFO] [stdout]    |
[INFO] [stdout] 43 |     error_handlers: Vec<Box<ErrorHandler<D> + Send + Sync>>
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 43 |     error_handlers: Vec<Box<dyn ErrorHandler<D> + Send + Sync>>
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/nickel.rs:228:87
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn listen<T: ToSocketAddrs>(mut self, addr: T) -> Result<ListeningServer, Box<StdError>> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn listen<T: ToSocketAddrs>(mut self, addr: T) -> Result<ListeningServer, Box<dyn StdError>> {
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/nickel.rs:300:88
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn listen_https<T,S>(mut self, addr: T, ssl: S) -> Result<ListeningServer, Box<StdError>>
[INFO] [stdout]     |                                                                                        ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn listen_https<T,S>(mut self, addr: T, ssl: S) -> Result<ListeningServer, Box<dyn StdError>>
[INFO] [stdout]     |                                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/nickel_error.rs:73:27
[INFO] [stdout]    |
[INFO] [stdout] 73 |         where T: Into<Box<Error + 'static>> {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 |         where T: Into<Box<dyn Error + 'static>> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/router/router.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub handler: Box<Middleware<D> + Send + Sync + 'static>,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub handler: Box<dyn Middleware<D> + Send + Sync + 'static>,
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/response.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     on_send: Vec<Box<FnMut(&mut Response<'a, D, Fresh>)>>
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     on_send: Vec<Box<dyn FnMut(&mut Response<'a, D, Fresh>)>>
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:42:23
[INFO] [stdout]    |
[INFO] [stdout] 42 |     handlers: Vec<Box<Middleware<D> + Send + Sync>>,
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     handlers: Vec<Box<dyn Middleware<D> + Send + Sync>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:43:29
[INFO] [stdout]    |
[INFO] [stdout] 43 |     error_handlers: Vec<Box<ErrorHandler<D> + Send + Sync>>
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 43 |     error_handlers: Vec<Box<dyn ErrorHandler<D> + Send + Sync>>
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/nickel.rs:228:87
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn listen<T: ToSocketAddrs>(mut self, addr: T) -> Result<ListeningServer, Box<StdError>> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 228 |     pub fn listen<T: ToSocketAddrs>(mut self, addr: T) -> Result<ListeningServer, Box<dyn StdError>> {
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/nickel.rs:300:88
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn listen_https<T,S>(mut self, addr: T, ssl: S) -> Result<ListeningServer, Box<StdError>>
[INFO] [stdout]     |                                                                                        ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn listen_https<T,S>(mut self, addr: T, ssl: S) -> Result<ListeningServer, Box<dyn StdError>>
[INFO] [stdout]     |                                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/nickel_error.rs:73:27
[INFO] [stdout]    |
[INFO] [stdout] 73 |         where T: Into<Box<Error + 'static>> {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 |         where T: Into<Box<dyn Error + 'static>> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/body_parser.rs:115:32
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn cause(&self) -> Option<&StdError> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn cause(&self) -> Option<&dyn StdError> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/body_parser.rs:115:32
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn cause(&self) -> Option<&StdError> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn cause(&self) -> Option<&dyn StdError> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:110:43
[INFO] [stdout]     |
[INFO] [stdout] 110 |             BodyError::Io(ref err) => err.description(),
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |         write!(out, "{}", self.description())
[INFO] [stdout]     |                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/nickel_error.rs:76:35
[INFO] [stdout]    |
[INFO] [stdout] 76 |         NickelError::new(res, err.description().to_string(), errorcode)
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:110:43
[INFO] [stdout]     |
[INFO] [stdout] 110 |             BodyError::Io(ref err) => err.description(),
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |         write!(out, "{}", self.description())
[INFO] [stdout]     |                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/nickel_error.rs:76:35
[INFO] [stdout]    |
[INFO] [stdout] 76 |         NickelError::new(res, err.description().to_string(), errorcode)
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `ssl`
[INFO] [stdout]  --> examples/https.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[cfg(feature = "ssl")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `compiletest_rs` and `unstable`
[INFO] [stdout]   = help: consider adding `ssl` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `ssl`
[INFO] [stdout]   --> examples/https.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[cfg(not(feature = "ssl"))]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `compiletest_rs` and `unstable`
[INFO] [stdout]    = help: consider adding `ssl` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/https.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use] extern crate nickel;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/integration_testing.rs:38:19
[INFO] [stdout]    |
[INFO] [stdout] 38 |     database: Box<Database>
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |     database: Box<dyn Database>
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/integration_testing.rs:68:79
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn start_server<D>(address: &str, database: D) -> Result<ListeningServer, Box<StdError>>
[INFO] [stdout]    |                                                                               ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn start_server<D>(address: &str, database: D) -> Result<ListeningServer, Box<dyn StdError>>
[INFO] [stdout]    |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> tests/example_tests.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] extern crate serde_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `ssl`
[INFO] [stdout]   --> tests/example_tests.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     #[cfg(feature = "ssl")]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `compiletest_rs` and `unstable`
[INFO] [stdout]    = help: consider adding `ssl` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> tests/examples/../../examples/integration_testing.rs:38:19
[INFO] [stdout]    |
[INFO] [stdout] 38 |     database: Box<Database>
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |     database: Box<dyn Database>
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> tests/examples/../../examples/integration_testing.rs:68:79
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn start_server<D>(address: &str, database: D) -> Result<ListeningServer, Box<StdError>>
[INFO] [stdout]    |                                                                               ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn start_server<D>(address: &str, database: D) -> Result<ListeningServer, Box<dyn StdError>>
[INFO] [stdout]    |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.41s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: typemap v0.3.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2015 edition to 2018
[INFO] [stderr]     Checking nickel v0.11.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2018 edition to 2021
[INFO] [stderr]        Fixed src/middleware.rs (2 fixes)
[INFO] [stderr]        Fixed src/nickel_error.rs (1 fix)
[INFO] [stderr]        Fixed src/nickel.rs (2 fixes)
[INFO] [stderr]        Fixed src/server.rs (1 fix)
[INFO] [stderr]        Fixed src/response.rs (1 fix)
[INFO] [stderr]        Fixed src/body_parser.rs (1 fix)
[INFO] [stderr]        Fixed src/router/router.rs (1 fix)
[INFO] [stderr]    Migrating examples/moved_ownership.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/no_macro_custom_data.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/template.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/logger_middleware.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/hello_world_macro.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/hello_world.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/integration_testing.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/query_string.rs from 2018 edition to 2021
[INFO] [stderr]        Fixed examples/integration_testing.rs (2 fixes)
[INFO] [stderr]    Migrating examples/enable_cors.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/route_data.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/routing.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating tests/cfail.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/form_data/form_data.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/json.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating tests/example_tests.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/regex_route.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/mount.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/custom_error_handler.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/macro_example.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/https.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/chaining.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating examples/static_files.rs from 2018 edition to 2021
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.36s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: typemap v0.3.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr] crater-edition-check: nickel v0.11.0 (/opt/rustwide/workdir) updating edition from 2018 to 2021
[INFO] [stderr]     Checking nickel v0.11.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut server = r#try!(HyperServer::http(addr));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:72:26
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut server = r#try!(HyperServer::https(addr, ssl));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             r#try!(server.serve("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:244:13
[INFO] [stdout]     |
[INFO] [stdout] 244 |             r#try!(server.serve(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             r#try!(server.serve_https("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |             r#try!(server.serve_https(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/response.rs:136:26
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let mut stream = r#try!(self.start());
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/responder.rs:72:34
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/responder.rs:114:34
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]     |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         r#try!(req.origin.read_to_string(&mut buf));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:46:28
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let body = r#try!(req.get_ref::<BodyReader>());
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut server = r#try!(HyperServer::http(addr));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:72:26
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut server = r#try!(HyperServer::https(addr, ssl));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             r#try!(server.serve("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:244:13
[INFO] [stdout]     |
[INFO] [stdout] 244 |             r#try!(server.serve(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             r#try!(server.serve_https("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |             r#try!(server.serve_https(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/response.rs:136:26
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let mut stream = r#try!(self.start());
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/responder.rs:72:34
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/responder.rs:114:34
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]     |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         r#try!(req.origin.read_to_string(&mut buf));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:46:28
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let body = r#try!(req.get_ref::<BodyReader>());
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:110:43
[INFO] [stdout]     |
[INFO] [stdout] 110 |             BodyError::Io(ref err) => err.description(),
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |         write!(out, "{}", self.description())
[INFO] [stdout]     |                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/nickel_error.rs:76:35
[INFO] [stdout]    |
[INFO] [stdout] 76 |         NickelError::new(res, err.description().to_string(), errorcode)
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:110:43
[INFO] [stdout]     |
[INFO] [stdout] 110 |             BodyError::Io(ref err) => err.description(),
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |         write!(out, "{}", self.description())
[INFO] [stdout]     |                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/nickel_error.rs:76:35
[INFO] [stdout]    |
[INFO] [stdout] 76 |         NickelError::new(res, err.description().to_string(), errorcode)
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `ssl`
[INFO] [stdout]  --> examples/https.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[cfg(feature = "ssl")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `compiletest_rs` and `unstable`
[INFO] [stdout]   = help: consider adding `ssl` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `ssl`
[INFO] [stdout]   --> examples/https.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[cfg(not(feature = "ssl"))]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `compiletest_rs` and `unstable`
[INFO] [stdout]    = help: consider adding `ssl` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/https.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use] extern crate nickel;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> tests/example_tests.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] extern crate serde_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `ssl`
[INFO] [stdout]   --> tests/example_tests.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     #[cfg(feature = "ssl")]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `compiletest_rs` and `unstable`
[INFO] [stdout]    = help: consider adding `ssl` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 19.93s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: typemap v0.3.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2015 edition to 2018
[INFO] [stderr]     Checking nickel v0.11.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/mimes.rs (2 fixes)
[INFO] [stderr]        Fixed src/macros/mod.rs (2 fixes)
[INFO] [stderr]        Fixed src/macros/router.rs (4 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/response.rs:230:15
[INFO] [stdout]     |
[INFO] [stdout] 229 |         let Response { origin, templates, data, map, on_send } = self;
[INFO] [stdout]     |                                                 ---  -------
[INFO] [stdout]     |                                                 |    |
[INFO] [stdout]     |                                                 |    `on_send` calls a custom destructor
[INFO] [stdout]     |                                                 |    `on_send` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                                 `map` calls a custom destructor
[INFO] [stdout]     |                                                 `map` will be dropped later as of Edition 2024
[INFO] [stdout] 230 |         match origin.start() {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^
[INFO] [stdout]     |               |
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 245 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-0.10.16/src/server/response.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | impl<'a, T: Any> Drop for Response<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `map` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `on_send` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/middleware.rs:57:19
[INFO] [stdout]     |
[INFO] [stdout]  57 |             match handler.invoke(&mut req, res) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  68 |                 Err(mut err) => {
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `err` calls a custom destructor
[INFO] [stdout]     |                     `err` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  92 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-0.10.16/src/server/response.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | impl<'a, T: Any> Drop for Response<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-0.10.16/src/server/response.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | impl<'a, T: Any> Drop for Response<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `err` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `err` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-0.10.16/src/server/response.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | impl<'a, T: Any> Drop for Response<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/response.rs:230:15
[INFO] [stdout]     |
[INFO] [stdout] 229 |         let Response { origin, templates, data, map, on_send } = self;
[INFO] [stdout]     |                                                 ---  -------
[INFO] [stdout]     |                                                 |    |
[INFO] [stdout]     |                                                 |    `on_send` calls a custom destructor
[INFO] [stdout]     |                                                 |    `on_send` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                                 `map` calls a custom destructor
[INFO] [stdout]     |                                                 `map` will be dropped later as of Edition 2024
[INFO] [stdout] 230 |         match origin.start() {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^
[INFO] [stdout]     |               |
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 245 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-0.10.16/src/server/response.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | impl<'a, T: Any> Drop for Response<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `map` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `on_send` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating examples/static_files.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/middleware.rs:57:19
[INFO] [stdout]     |
[INFO] [stdout]  57 |             match handler.invoke(&mut req, res) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  68 |                 Err(mut err) => {
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `err` calls a custom destructor
[INFO] [stdout]     |                     `err` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  92 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-0.10.16/src/server/response.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | impl<'a, T: Any> Drop for Response<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-0.10.16/src/server/response.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | impl<'a, T: Any> Drop for Response<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `err` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `err` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-0.10.16/src/server/response.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | impl<'a, T: Any> Drop for Response<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating examples/template.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/integration_testing.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/moved_ownership.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/form_data/form_data.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/routing.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/json.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/route_data.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/chaining.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/macro_example.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/query_string.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> examples/macro_example.rs:62:14
[INFO] [stdout]     |
[INFO] [stdout]  52 |       server.utilize(router!(
[INFO] [stdout]     |  ____________________-
[INFO] [stdout]  53 | |         // go to http://localhost:6767/user/4711 to see this route in action
[INFO] [stdout]  54 | |         get "/user/:userid" => |request| {
[INFO] [stdout] ...   |
[INFO] [stdout]  62 | |             &["This is user: ", request.param("userid").unwrap()][..]
[INFO] [stdout]     | |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this temporary value will be dropped at the end of the block
[INFO] [stdout] ...   |
[INFO] [stdout] 123 | |     ));
[INFO] [stdout]     | |_____- borrow later used by call
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating examples/enable_cors.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/regex_route.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/custom_error_handler.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/logger_middleware.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/cfail.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/example_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/hello_world.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/https.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/hello_world_macro.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/mount.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/no_macro_custom_data.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 24.67s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: typemap v0.3.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr] crater-edition-check: nickel v0.11.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking nickel v0.11.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut server = r#try!(HyperServer::http(addr));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:72:26
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut server = r#try!(HyperServer::https(addr, ssl));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             r#try!(server.serve("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:244:13
[INFO] [stdout]     |
[INFO] [stdout] 244 |             r#try!(server.serve(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             r#try!(server.serve_https("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |             r#try!(server.serve_https(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/response.rs:136:26
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let mut stream = r#try!(self.start());
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/responder.rs:72:34
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/responder.rs:114:34
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]     |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         r#try!(req.origin.read_to_string(&mut buf));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:46:28
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let body = r#try!(req.get_ref::<BodyReader>());
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut server = r#try!(HyperServer::http(addr));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:72:26
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut server = r#try!(HyperServer::https(addr, ssl));
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             r#try!(server.serve("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:244:13
[INFO] [stdout]     |
[INFO] [stdout] 244 |             r#try!(server.serve(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             r#try!(server.serve_https("localhost:0",
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/nickel.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |             r#try!(server.serve_https(addr,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/response.rs:136:26
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let mut stream = r#try!(self.start());
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/responder.rs:72:34
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/responder.rs:114:34
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 let mut stream = r#try!(res.start());
[INFO] [stdout]     |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         r#try!(req.origin.read_to_string(&mut buf));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/body_parser.rs:46:28
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let body = r#try!(req.get_ref::<BodyReader>());
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:110:43
[INFO] [stdout]     |
[INFO] [stdout] 110 |             BodyError::Io(ref err) => err.description(),
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |         write!(out, "{}", self.description())
[INFO] [stdout]     |                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/nickel_error.rs:76:35
[INFO] [stdout]    |
[INFO] [stdout] 76 |         NickelError::new(res, err.description().to_string(), errorcode)
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:110:43
[INFO] [stdout]     |
[INFO] [stdout] 110 |             BodyError::Io(ref err) => err.description(),
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/body_parser.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |         write!(out, "{}", self.description())
[INFO] [stdout]     |                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/nickel_error.rs:76:35
[INFO] [stdout]    |
[INFO] [stdout] 76 |         NickelError::new(res, err.description().to_string(), errorcode)
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `ssl`
[INFO] [stdout]  --> examples/https.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[cfg(feature = "ssl")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `compiletest_rs` and `unstable`
[INFO] [stdout]   = help: consider adding `ssl` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `ssl`
[INFO] [stdout]   --> examples/https.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[cfg(not(feature = "ssl"))]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `compiletest_rs` and `unstable`
[INFO] [stdout]    = help: consider adding `ssl` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/https.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use] extern crate nickel;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> examples/macro_example.rs:62:14
[INFO] [stdout]     |
[INFO] [stdout]  52 |       server.utilize(router!(
[INFO] [stdout]     |  ____________________-
[INFO] [stdout]  53 | |         // go to http://localhost:6767/user/4711 to see this route in action
[INFO] [stdout]  54 | |         get "/user/:userid" => |request| {
[INFO] [stdout] ...   |
[INFO] [stdout]  62 | |             &["This is user: ", request.param("userid").unwrap()][..]
[INFO] [stdout]     | |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   - temporary value is freed at the end of this statement
[INFO] [stdout]     | |              |
[INFO] [stdout]     | |              creates a temporary value which is freed while still in use
[INFO] [stdout] ...   |
[INFO] [stdout] 123 | |     ));
[INFO] [stdout]     | |_____- borrow later used by call
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nickel` (example "macro_example") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> tests/example_tests.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] extern crate serde_derive;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `ssl`
[INFO] [stdout]   --> tests/example_tests.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     #[cfg(feature = "ssl")]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `compiletest_rs` and `unstable`
[INFO] [stdout]    = help: consider adding `ssl` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "c7493f5c15cab38faaa7a8ce1e44ade6c11b9584bab912ad25a67d0108aa604a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c7493f5c15cab38faaa7a8ce1e44ade6c11b9584bab912ad25a67d0108aa604a", kill_on_drop: false }`
[INFO] [stdout] c7493f5c15cab38faaa7a8ce1e44ade6c11b9584bab912ad25a67d0108aa604a
